In a computer data storage device, data is typically stored on magnetic media by reversing the magnetic flux at each "one" bit location, and maintaining the same flux direction at each "zero" bit location, called NRZI recording. When these flux reversals pass a read head they cause a voltage change in the read head. The voltage from the various flux reversals along a data track appears as a varying signal level on the output of the read head, with the voltage caused by each flux reversal appearing as a positive or negative voltage pulse. These pulses must be detected by the electronics connected to the read head, typically by detecting the peak of each pulse to determine the pulse location.
Similarly, the voltage from a data transmission line appears as a varying signal level on the input to a data communication device, such as a modem, with the voltage of each bit change often appearing as a positive or negative voltage pulse.
In order to separate the voltage pulses from noise in the signal, the voltage may be compared to a predetermined threshold, and only peaks whose magnitude exceeds the threshold are considered to be possible pulses. If the peaks are too small with respect to the threshold, the signal gain must be adjusted higher, and if the peaks are too high the gain must be adjusted lower. To properly determine the gain setting, pulses must be detected so that the gain adjustment can maintain the proper level for a pulse peak.
Because the rotational speed of a disk may vary, a phase locked loop is used to synchronize a detector to the times of the pulses. The peaks of the pulses caused by bit transitions must be detected in order to correct for any timing deviations.
Several methods have been used to detect the pulses and thus the transitions within the data. In the prior art, peak detection circuitry has ordinarily been analog in nature, while digital detectors have ordinarily been sequence detectors such as those implementing the Viterbi method, disclosed in application Ser. No. 07/852,015, filed Mar. 16, 1992, of Richard T. Behrens, Kent D. Anderson and Neal Glover, entitled "Method and Apparatus for Reduced-Complexity Viterbi-Type Sequence Detectors", which is incorporated herein by reference for all that is disclosed and taught therein. However, most digital pulse detectors analyze the context of the pulses, and do not detect a pulse until several samples have been taken beyond the peak of the pulse. This latency in detecting pulses is a disadvantage when the location of a pulse needs to be known in order to make timing and/or gain corrections.
It is thus apparent that there is a need in the art for an improved apparatus which digitally detects pulses at the earliest possible time after the peak of the pulse occurs. The present invention meets these and other needs.